home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / lists / gem / l_0399 / 51 < prev    next >
Text File  |  1994-08-27  |  2KB  |  58 lines

  1. Subject: Re: Colour. 
  2. Date: Tue, 31 May 1994 10:15:02 +1000
  3. From: Warwick Allison <warwick@cs.uq.oz.au>
  4. Precedence: bulk
  5.  
  6. In message <199405301254.OAA04628@blade.stack.urc.tue.nl>, you wrote:
  7. >Warwick wrote:
  8. >
  9. >>     - The standard 16 colours
  10. >>         - When should a user desire to change them?
  11. >
  12. >In my opinion a user will never want to change that standard 16 colours.
  13. >But users do want to change the colour of certain objects on screen.
  14.  
  15. Here's when they will:
  16.  
  17.     - When they don't like having a bright green desktop.
  18.     - When they want more subtle colours for window elements.
  19.  
  20. I changed my palette for exactly these reasons.  The changes where minimal
  21. and all colour icons still look fine.
  22.  
  23.  
  24. >The least thing that should be added is that there is some way for other
  25. >programs (or a central colour manager) to find out that the application
  26. >has changed the palette or something that registers a program in a
  27. >systemwide database as 'colour-aware' so that other programs know that
  28. >those applications are well-behaved.
  29.  
  30. Hmm.... this may be a good idea.
  31.  
  32. The problem at the moment is that the only way an application can check if
  33. the palette has changed is to look at every colour - useless.  If there was
  34. a vdi call which returned the last TIME the palette was changed (or even just
  35. some number that changes when the palette changes [eg. increases by 1]), then
  36. a program could very regularly check this state and compare it with the last
  37. state it recorded.
  38.  
  39. I'm very keen on this idea.  It should work very well, and supports older
  40. applications.
  41.  
  42. Who should be responsible for changing this `last-change' value?  Libraries?
  43. The VDI?  (if it was the VDI, then it would work for old apps)
  44.  
  45. Usage:
  46.  
  47.     restore_palette()
  48.     {
  49.         static int remember=0;
  50.         if (remember!=palette_change_number()) {
  51.             set_palette(...) /* increments palette_change_number */
  52.             remember=palette_change_number()
  53.         }
  54.     }
  55.  
  56. --
  57. Warwick
  58.